home *** CD-ROM | disk | FTP | other *** search
/ NeXTSTEP 3.3 (Developer)…68k, x86, SPARC, PA-RISC] / NeXTSTEP 3.3 Dev Intel.iso / NextDeveloper / Source / GNU / emacs / src / s-irix4-0.h < prev    next >
C/C++ Source or Header  |  1992-04-28  |  1KB  |  46 lines

  1. #include "s-irix3-3.h"
  2.  
  3. #define USG5_3
  4.  
  5. /* Define HAVE_ALLOCA to say that the system provides a properly
  6.    working alloca function and it should be used. */
  7. #define HAVE_ALLOCA
  8. #undef C_ALLOCA
  9. #define alloca __builtin_alloca
  10.  
  11. /* use K&R C */
  12. #define C_SWITCH_MACHINE -cckr
  13.  
  14. /* SGI has all the fancy wait stuff, but we can't include sys/wait.h
  15.    because it defines BIG_ENDIAN and LITTLE_ENDIAN (ugh!.)  Instead
  16.    we'll just define WNOHANG right here.
  17.    (An implicit decl is good enough for wait3.)  */
  18.  
  19. #define WNOHANG        0x1
  20.  
  21. /* No need to use sprintf to get the tty name--we get that from _getpty.  */
  22. #define PTY_TTY_NAME_SPRINTF
  23. /* No need to get the pty name at all.  */
  24. #define PTY_NAME_SPRINTF
  25. #ifdef emacs
  26. char *_get_pty();
  27. #endif
  28. /* We need only try once to open a pty.  */
  29. #define PTY_ITERATION
  30. /* Here is how to do it.  */
  31. /* It is necessary to prevent SIGCHLD signals within _getpty.
  32.    So we block them. */
  33. #define PTY_OPEN                        \
  34. {                                \
  35.   int mask = sigblock (sigmask (SIGCHLD));            \
  36.   char *name = _getpty (&fd, O_RDWR | O_NDELAY, 0600, 0);    \
  37.   sigsetmask(mask);                        \
  38.   if (name == 0)                        \
  39.     return -1;                            \
  40.   if (fd < 0)                            \
  41.     return -1;                            \
  42.   if (fstat (fd, &stb) < 0)                    \
  43.     return -1;                            \
  44.   strcpy (pty_name, name);                    \
  45. }
  46.